package com.wangp.procurement.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.wangp.procurement.po.GoodsDO;
import com.wangp.procurement.po.ProcurementManagementDO;
import com.wangp.procurement.vo.UpsertProcurementManagementDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 第一行简要描述.
 *
 * @author WangPing2
 *     <p>createDate 2024-11-17</p>
 **/
@Mapper
public interface ProcurementManagerMapper extends BaseMapper<ProcurementManagementDO> {

    // todo 数据库操作只能用DO

    //采购管理--失效
    Integer disableInfo(Integer id);

    /**
     * 采购管理---根据id 查询管理对应的货物
     * @param id
     * @return UpsertProcurementManagementDTO
     */
    ProcurementManagementDO selectProcurementManagementById(Integer id);

    //分页数据
    List<ProcurementManagementDO> findPageData(@Param("offset") int offset, @Param("size") int size);

    // 查询总记录数
    int getTotalCount();

    //先把对应采购管理内的所有货物删除
    void deleteByProcurementManagementId(Integer procurementManagementId);

    // todo 应该用goodMapper
  //  void insertGoods(List<GoodsDO> goodsDOS);

    ProcurementManagementDO findAll();
    /**
     * 根据id修改管理信息和对应的货物信息
     * @param procurementManagementDO
     */
    void updateManage(ProcurementManagementDO procurementManagementDO);


    /**
     * 采购管理---新增
     * @param procurementManagementDO
     * @return 新增数据
     */
    void insertManager(ProcurementManagementDO procurementManagementDO);

}
